# 使用Python官方镜像作为基础镜像
FROM python:3.12.9-slim

# 设置工作目录
WORKDIR /app

# 安装系统依赖
RUN apt-get update && apt-get install -y \
    gcc \
    postgresql-client \
    redis-tools \
    && rm -rf /var/lib/apt/lists/*

# 复制项目文件
COPY . .

# 安装Python依赖
RUN pip install --no-cache-dir -r requirements.txt

# 创建日志目录
RUN mkdir -p logs

# 设置非敏感环境变量
ENV PYTHONUNBUFFERED=1
ENV DB_HOST=host.docker.internal
ENV DB_PORT=3307
ENV DB_NAME=arbitrage
ENV DB_USER=postgres
ENV REDIS_HOST=host.docker.internal
ENV REDIS_PORT=6379
ENV REDIS_DB=0

# 创建启动脚本
RUN echo '#!/bin/bash\n\
if [ -f "/app/.env" ]; then\n\
    source /app/.env\n\
fi\n\
python main.py "$@"' > /app/start.sh && \
chmod +x /app/start.sh

# 启动命令
ENTRYPOINT ["/app/start.sh"] 